<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<img id="img">
	</body>
	<script type="text/javascript">
		/*
		 * 银行存款本息 = 本金 + 本金 * 年利率 * N年
		 * 招商银行整存整取人民币业务一年期存款年利率是1.75%，
		 * 问：王老太存20万元，一年后本息一共能取出多少钱？
		 * 
		 * 五年期年利率是2.75%，问：王老太存20万元，五年后本息一共能取出多少钱？
		 */
		function getBankMoney(money, rate, years) {

			return money + money * rate / 100 * years;
		}
		// console.log(`答：王老太存20万元，一年后本息一共能取出 ${getBankMoney(200000,1.75,1)}"元`);
		// console.log(`答：王老太存20万元，五年后本息一共能取出 ${getBankMoney(200000,2.75,5)}"元`);

		/*
		 * 防疫健康码被用来记录行程轨迹，绿码可以通行，黄码需要隔离14天，红码要被关进小黑屋；
		    封装函数，随机三种情况，输出每种码的表示含义
		 */
		var healthCode = function(status) {

			if (status === "绿码") {
				console.log("可以通行");
			} else if (status === "黄码") {
				console.log("隔离14天");
			} else {
				console.log("你要被关进小黑屋了！");
			}
		}
		var arr = ["绿码", "黄码", "红码"];

		// healthCode(arr[parseInt(Math.random()*3)])

		function playGame(touOne, touTwo, touThree) {

			var sum = touOne + touTwo + touThree;
			if (sum >= 11) {
				console.log(`${touOne}、${touTwo}、${touThree} 点 大`);
				return "大";
			} else {
				console.log(`${touOne}、${touTwo}、${touThree} 点 小`);
				return "小";
			}

		}

		function getRandom() {
			return parseInt(Math.random() * 6 + 1);
		}

		function main() {
			do {
				// 由于不能信任用户输入，所以前端负责用户输入验证
				var result = prompt("请输入大或小", "大");
			} while (!(result == "大" || result == "小"));

			return result;
		}
		// alert(main() == playGame(getRandom(), getRandom(), getRandom())? '恭喜你中奖了2000元' : '请再来一次！');

		// 取两个数之间的随机数，抽象成固定公式，我们就随时可以用了
		function getRandomNum(startNum, endNum) {
			return parseInt(Math.random() * (endNum - startNum) + startNum);
		}
		// 工作种常见问题:短信验证码发送


		// 100000 - 999999 
		var code = getRandomNum(100000, 999999);
		var singName = '【地瓜科技】';
		// console.log(`${singName} 验证码 ${code},您正在使用短信码登录，有效期10分钟`);
		// 保存私有秘密数据
		function saveSecertDataPrivate(mobile, accessKeyId, accessKeySecret) {
			// 对象的属性名，和值（变量名或形参）一样，有么有简化的办法？
			var obj = {
				mobile,
				accessKeyId,
				accessKeySecret
			}

			// 返回闭包（子函数）
			return function() {
				return obj;
			}
		}
		var sendSMS = saveSecertDataPrivate(mobile, 'LTAI5tJx1t3bmbjvQC2DrSMy', 'ptUiYadjv2meNTM9ahNDBrdL0C4LqX')
		// console.log(sendSMS());

		var mobile = '18910753284';
		var password = '123456';
		var sucess = {
			code: "200",
			msg: "ok"
		}
		var error = {
			code: "-1",
			msg: "密码错误"
		}

		function confirmPassword(mobile, password) {
			this.mobile = '18910753284';
			this.password = '123456';
			// 闭包
			return function() {
				console.log(this.mobile);
				console.log(mobile);
				return this.mobile == mobile && this.password == password ? sucess : error;
			}
		}
		var confirm = confirmPassword(mobile, password);
		// console.log(confirm());

		var idcard = '320661198405181232';
		var realname = '郝天翔';

		function saveKey() {
			this.key = 'y7doSz3LSywk3';
			return function() {
				return this.key;
			}
		}
		// 通过网络请求结果回来
		function confirmIdCardHttp(idcard, realname, key) {
			var method = 'get';
			var url = `http://op.juhe.cn/idcard/query?key=${key}&idcard=${idcard}&realname=${realname}`;
			// 假设请求成功
			console.log("成功向服务器发送了URL与数据");
			return {
				"reason": "成功",
				"result": {
					"realname": realname,
					/*真实姓名*/
					"idcard": idcard,
					/*身份证号码*/
					"orderid": "J103202010151450419556",
					/*流水号*/
					"res": 1 /*1：匹配 2：不匹配*/
				},
				"error_code": 0
			}
		}
		var getKey = saveKey();
		// console.log(confirmIdCardHttp(idcard, realname, getKey()));
		
		// 模拟第三方登录，获取用户微信授权信息
		// 4. 获取微信授权登录信息，模拟返回头像avatarUrl、性别gender、城市city
		
		function getUserInfo() {
			this.avatarUrl = 'https://thirdwx.qlogo.cn/mmopen/vi_32/vJUCV2sN5ict5uaCXUXAnfaqgHllLH7cHH02rd6bXpj88kJ1yGpBlChUB23155GibhSL0ePqOoWqz13wnOKM9Sbg/132';
			this.nickName = '沮丧小彤.👻';
			this.gender = '2';
			this.city = 'Qitaihe';
			// 闭包拿数据
			return function() {
				return {
					nickName:this.nickName,
					avatarUrl:this.avatarUrl,
					gender:this.gender,
					city:this.city
				}
			}
		}
		var getData = getUserInfo();
		console.log(getData());
		document.getElementById("img").src = getData().avatarUrl;
		document.getElementById("img").title = getData().nickName;
		document.write(`<h1>${getData().nickName}</h1>`)
		document.write(`<h1>${getData().city}</h1>`)
	</script>
</html>
